package com.atguigu.mapper;

import com.atguigu.entity.TrackInfo;
import com.atguigu.query.TrackInfoQuery;
import com.atguigu.vo.AlbumTrackListVo;
import com.atguigu.vo.TrackListVo;
import com.atguigu.vo.TrackStatVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;

/**
 * <p>
 * 声音信息 Mapper 接口
 * </p>
 *
 * @author Joe
 * @since 2024-11-15
 */
public interface TrackInfoMapper extends BaseMapper<TrackInfo> {

    //分页查询声音
    IPage<TrackListVo> findUserTrackPage(IPage<TrackListVo> pageParam, TrackInfoQuery trackInfoQuery);


    IPage<AlbumTrackListVo> getAlbumTrackAndStatInfo(IPage<AlbumTrackListVo> pageParam, Long albumId);

    //获取声音统计信息
    TrackStatVo getTrackStatistics(@Param("trackId") Long trackId);
}
